Комп’ютерні методи дослідження інформаційних процесів і систем

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних технологій, автоматики та метрології
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2010
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Інформаційні технології
Група:
БІ

Частина тексту файла

Міністерство освіти і науки України Національний університет «Львівська Політехніка» Інститут комп’ютерних технологій автоматики та метрології Кафедра Безпеки Інформаційних Технологій  Звіт Про виконання лабораторної роботи № 3 «Комп’ютерні методи дослідження інформаційних процесів і систем» Львів 2010 Мета роботи: – ознайомлення з ітераційними методами розв’язування систем лінійних алгебраїчних рівнянь. Короткі теоретичні відомості: Є система лінійних алгебраїчних рівнянь, що зведена до нормального вигляду . Тоді за методом Зейделя, вибираючи вектор початкових наближень  (як правило, це стовпець вільних членів  ), уточнення значень невідомих проводять наступним чином: 1) перше наближення:  2) k + 1 наближення  k = 0, 1, 2, … . Таким чином ітераційний процес подібний до методу простих ітерацій, однак уточнені значення  одразу ж підставляються в наступні рівняння:  – метод Зейделя. Іншими словами, метод Зейделя відрізняється від методу простої ітерації тим, що при обчисленні  на “k+1”-му кроці враховуються значення , ,  , обчислені на цьому самому кроці. Завдання: Розв’язати систему лінійних алгебраїчних рівнянь методами простої ітерації або Зейделя.  ,    Список ідентифікаторів, констант, методів, використаних в програмі та блок-схемі алгоритму: Std::cout<< – метод який забезпечує введення в програму вхідних величин. Cin>> – метод класу STD., який забезпечує зчитування значення з клавиатури. int Main() – метод класу Program, який забезпечує початок роботи програми. M,n- Змінні, в даній програмі константи які задають розмір матриці. I,l,j-Ітераційні змінні A-двовимірний масив для збереження матриці. X,p- одновимірні масиви для обчислення Хі, один зберігає значення попереднього кроку(початкове наближення) інший даного. E-масив для обчислення похибок. dE-Допустима похибка. maxE-максимальна пхибка серед одержаних значень Блок-схема: Остаточна версія програми: #include<stdio.h> #include<math.h> #include <iostream> const int n=4; const int m=5; void main(void) { int i,l,j; double a[4][5],x[4],p[4],E[4],dE,maxE; std::cout<<"vvedit matrycju:\n"; for(i=0;i<n;i++) { for(j=0;j<m;j++) { std::cout<<" a["<<i+1<<"."<<j+1<< "]= "; std::cin>>a[i][j]; } std::cout<<"\n"; } std::cout<<"vvedit to4nist:"; std::cin>>dE; for(i=0;i<n;i++) { for(j=0;j<m-1;j++) { if(j==i)a[i][j]=a[i][j]; else a[i][j]=-a[i][j]/a[i][i]; } a[i][m-1]/=a[i][i]; a[i][i]=0; } for(i=0;i<n;i++)p[i]=a[i][m-1]; do{ for(i=0;i<n;i++) { x[i]=a[i][m-1]; for(j=0;j<i;j++) { x[i]+=a[i][j]*x[j]; } for(j=i;j<n;j++) { x[i]+=a[i][j]*p[j]; } } maxE=0; for(i=0;i<n;i++) { E[i]=fabs(x[i]-p[i]); if(maxE<E[i])maxE=E[i]; p[i]=x[i]; } } while(dE<maxE); for(i=0;i<n;i++) std::cout<<"\n"<<"x["<<i+1<<"]="<<x[i]<<"\n"; std::cout<<" this is the end..."; std::cin>>a[i][i]; } Результати роботи програми:  Висновок: На даніій лабораторній роботі я ознайоммвся з ітераційними методами розв’язування систем лінійних алгебраїчних рівнянь.А саме з методом Зейделя
Антиботан аватар за замовчуванням

28.01.2013 18:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини